package Java031;

import java.util.Scanner;
class Person{
    private String name;
    private int age;
	private boolean gender;
	private static int idnum;
	private int id=0;
	{	id=idnum++;
		System.out.println("This is initialization block, id is " + Integer.toString(id));	 
	}
	static{
		System.out.println("This is static initialization block");		
	}
	public Person(){
		System.out.println("This is constructor");
		System.out.println(name+","+age+","+gender+","+id);
	}
	public Person(String name,int age,boolean gender){
		this.name=name;
		this.age=age;
		this.gender=gender;	
	}
	public void setname(String name){
		this.name=name;
	}
	public String getname(){
		return name;
	}
	public void setgenger(boolean gender){
		this.gender=gender;
	}
	public Boolean getgender(){
		return gender;
	}
	public void setage(int age){
		this.age=age;
	}
	public int getage(){
		return age;
	}
	public String toString() {
		return String.format("Person [name=%s, age=%d, gender=%s, id=%d]",name,age,gender,id);
	}	
}
public class Java0302 {
	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
	    int n=Integer.parseInt(in.nextLine());
	    Person[] persons=new Person[n];
	    for(int i=0;i<persons.length;i++){
	    	Person person=new Person(in.next(),in.nextInt(),in.nextBoolean());
	    	persons[i]=person;
	    }
		for(int j=persons.length-1;j>=0;j--){
			System.out.println(persons[j].toString());
		}
		Person p=new Person();
		System.out.println(p.toString());
	}
}